<!doctype html>
<html lang="zh" class="h-100">
  <head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">

    <link rel="stylesheet" href="assets/css/bootstrap.min.css">
    <link rel="stylesheet" href="assets/css/style.css">

    <title>集群架构：发布与订阅模型</title>
  </head>
  <body class="h-100">
  <div class="container-fluid h-100 p-2">
  	<h1>集群架构：发布与订阅模型</h1>
  	<p>在软件架构中，发布订阅是一种消息范式，消息的发送者（称为发布者）不会将消息直接发送给特定的接收者（称为订阅者）。而是将消息发送某个频道上，无需了解哪些订阅者可能存在。同样的，订阅者可以表达对一个或多个频道的兴趣，只接收感兴趣的消息，无需了解哪些发布者存在。</p><p>这种模式提供了更大的网络可扩展性和更动态的网络拓扑，同时也降低了对发布者和发布数据的结构修改的灵活性。</p><p>涉及三个重要概念：</p><h4>发布者</h4><p>即消息的生产者，现实中，我们可以简单认为电视台演播室，就是消息的发布者，负责把播放消息。</p><h4>订阅者</h4><p>即消息接收者，现实中，可以把电视观众视为订阅者。一个订阅者同时可以订阅多个频道，这样就能收到多个频道上的消息。</p><h4>频道</h4><p>即消息的分类概念，这个和现实中电视频道是一个概念。</p><h4>广播</h4><p>在传统的订阅-发布模型基础上，我们可以很容易实现广播效果：  <br>==订阅者向当前所有频道上发送消息，那么就形成了广播形式==</p><p>beyod开发之初，就考虑到集群应用环境，所以也内建了发布订阅模型支持，用于构建分布式网络应用。</p>  </div>
  <script src="assets/js/jquery.min.js"></script>
  <script src="assets/js/popper.min.js"></script>
  <script src="assets/js/bootstrap.min.js"></script>

<script>
$(function(){
  var url = self.location;
  parent.$('a').removeClass('font-weight-bold');
  parent.$('a[href="250.html"]').addClass('font-weight-bold');
});
</script>  
  
  </body>
</html>